home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / amos / sillysource5.lha / GO_TROLL.AMOS / GO_TROLL.amosSourceCode < prev    next >
AMOS Source Code  |  1980-07-04  |  9KB  |  338 lines

  1. Set Stack 1000
  2. Screen Open 1,320,200,16,Lowres : Curs Off : Flash Off : Hide On : Rem BREAK OFF  
  3.  
  4. Dim NAME$(40) : Sam Bank 12
  5. Dim XB(13),YB(13),IMG(13),DEK(13,5),PCK(52)
  6. Dim XB2(13),YB2(13)
  7. Dim MUMCARDS(14),PLCARDS(14),TROLL$(14),NUMMUM(14),NUMPL(14)
  8. Dim X1(30),Y1(30),X2(30),Y2(30)
  9.  
  10. Rem GO TROLL 
  11. Fade 3 : Wait 40 : Cls 
  12. F$="HD" : If Exist(F$)=True Then HD=1 Else HD=0
  13. Unpack 14 To 1 : Wait Vbl : ERR=5
  14.  
  15. STA:
  16.  
  17. DEANO=1 : Gosub SETUP : Gosub THINGY
  18.  
  19. STAR:
  20.  
  21. Gosub SCOS
  22. Locate 0,24 : Ink 4 : Paper 4 : Centre Space$(38) : A$="Mummy go first"
  23. Centre A$ : SPEECH=Len(A$)*3 : Sam Play 2 : Gosub ANI : Wait 60
  24. Goto MUM_ASK_TROLLS
  25.  
  26. PL_AGAIN:
  27.  
  28. Ink 4 : Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  29. A$="Would you like to play again?" : Centre A$ : SPEECH=Len(A$)*3
  30. Sam Play 17 : Gosub ANI : Wait 50
  31. Paper 4 : Ink 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  32. Centre "Left Mouse:Yes  Right Mouse: No"
  33. CHECK:
  34. If Mouse Key=1 Then Goto STA
  35. If Mouse Key=2 Then Hide On : Fade 3 : Wait 30 : Cls : Goto TITLE
  36. Goto CHECK
  37.  
  38. ANI:
  39.  
  40. Bob 1,147,40,15
  41. M$="Anim 0,(14,5)(15,5)(16,5)(17,5)"
  42. Channel 1 To Bob 1 : Amal 1,M$ : Amal On 1
  43. Wait SPEECH
  44. Amal Off 1 : Bob Off 1 : Return 
  45.  
  46. MUMMY_GO_TROLL:
  47.  
  48. Locate 0,24 : Ink 4 : Paper 4 : Centre Space$(38)
  49. Locate 0,24 : Centre "Mummy Go Troll" : Sam Play 10 : Wait 110
  50. Locate 0,24 : Ink 4 : Paper 4 : Centre Space$(38)
  51. Locate 0,24 : A$="Mummy wants her troll" : Centre A$ : SPEECH=Len(A$)*4
  52. Sam Play 11 : Gosub ANI : Wait 40
  53. Paste Bob 256,110,19 : Sam Play 34 : Wait 50
  54. NC:
  55. Inc PCK : P=PCK(PCK) : If P=99 Then Goto NC
  56.  
  57. For X=1 To 13
  58. If MUMCARDS(X)=P Then Inc NUMMUM(X) : Inc MCT : Goto MUMBOOK1
  59. Next X
  60.  
  61. For X=1 To 13
  62. If MUMCARDS(X)=99 Then Inc MCT : MUMCARDS(X)=P : Inc NUMMUM(X) : Goto MUMBOOK1
  63. Next X
  64.  
  65. MUMBOOK1:
  66.  
  67. If NUMMUM(X)=4
  68. Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  69. A$="Thats a book for Mummy" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 3
  70. Gosub ANI : Wait 40 : NUMMUM(X)=0
  71. MUMCARDS(X)=99 : Inc MUMBOOKS : TROLL$(P)="" : MCT=MCT-4
  72. End If 
  73.  
  74. If MUMCARDS(FISH)=P
  75. Locate 0,24 : Centre Space$(38) : Locate 0,24 : A$="I got what I wanted"
  76. Centre A$ : SPEECH=Len(A$)*3 : Sam Play 15 : Gosub ANI : Wait 50
  77. Gosub THINGY : Inc TROLL : Goto MUM_ASK_TROLLS
  78. End If 
  79. Gosub THINGY : Goto PL_ASK_TROLLS
  80.  
  81. SETUP:
  82. For X=1 To 13 : IMG(X)=99 : Next X
  83. For X=1 To 8 : NUMMUM(X)=1 : NUMPL(X)=1 : Next X
  84. MUMBOOKS=0 : PLBOOKS=0 : MCT=8 : PLCT=8 : PCK=0
  85. Paste Bob 292,110,18
  86. B=0 : A=0 : COUNT=1
  87. For X=1 To 13 : For Y=0 To 4 : DEK(X,Y)=99 : Next Y : Next X
  88. For X=1 To 13 : MUMCARDS(X)=99 : Next X
  89. For X=1 To 13 : PLCARDS(X)=99 : Next X
  90.  
  91. 620 B=0
  92. 630 A=Rnd(12)+1
  93. For X=1 To 13
  94. If DEK(X,COUNT)=A Then Goto 630
  95. Next X
  96. Inc B : DEK(B,COUNT)=A : Inc PCK : PCK(PCK)=A
  97. If B<13 Then Goto 630
  98. If B=13 and COUNT<4 Then Inc COUNT : Goto 620
  99.  
  100. PCK=8
  101. For X=1 To 8
  102. PLCARDS(X)=PCK(X) : PCK(X)=99
  103. Next X
  104.  
  105. For X=1 To 8
  106. MUMCARDS(X)=PCK(X+14) : PCK(X+14)=99
  107. Next X
  108. XX=24
  109. For X=1 To 8 : XB(X)=XX : XB2(X)=XX : XX=XX+32
  110. YB(X)=158 : YB2(X)=158
  111. Next X
  112. XX=80
  113. For X=9 To 13
  114. XB(X)=XX : XB2(X)=XX : XX=XX+32 : YB(X)=125 : YB2(X)=125
  115. Next X
  116. Restore 800 : For X=1 To 13 : Read TROLL$(X) : Next X
  117. 800 Data "Peeko Boos","Cocos","April Tickety Boos","Chicos","Poko Sues","Little Devils"
  118. 810 Data "Mini Micks","Sonys","Punkies","Pinkety Boos","Waynes","Bonys","Mr Cools"
  119. Return 
  120.  
  121. MUM_ASK_TROLLS:
  122.  
  123. A=MUMCARDS(TROLL)
  124. If TROLL>=14 Then TROLL=1 : Goto MUM_ASK_TROLLS
  125. If A=99 and TROLL<14 Then Inc TROLL : Goto MUM_ASK_TROLLS
  126. If TROLL$(A)="" Then Inc TROLL : Goto MUM_ASK_TROLLS
  127. Hide On 
  128. Paste Bob 0,110,A
  129.  
  130. Locate 0,24 : Paper 4 : Centre Space$(38)
  131. Locate 0,24 : A$="Please give me your "+TROLL$(A) : Centre A$ : SPEECH=40
  132. Sam Play 1 : Gosub ANI : Wait 60 : A$=TROLL$(A)
  133. SPEECH=Len(A$)*5 : SAM=A+17 : Sam Play SAM : Gosub ANI : Wait 40
  134.  
  135. For X=1 To 13
  136. If PLCARDS(X)=A Then Goto MUM_TAKE
  137. Next X
  138.  
  139. FISH=A : Goto MUMMY_GO_TROLL
  140.  
  141. MUM_TAKE:
  142.  
  143. T=NUMPL(X) : NUMPL(X)=NUMPL(X)-T : MUMCARDS(TROLL)=PLCARDS(X)
  144. PLCARDS(X)=99 : Ink ERR : Bar XB(X),YB(X) To XB(X)+30,YB(X)+32 : 
  145. Sam Play 34 : Wait 40 : PLCT=PLCT-T : MCT=MCT+T
  146. NUMMUM(TROLL)=NUMMUM(TROLL)+T
  147.  
  148. If NUMMUM(TROLL)=4
  149. Ink 4 : Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  150. A$="Thats a book for Mummy" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 3
  151. Gosub ANI : Wait 40 : NUMMUM(TROLL)=0 : MUMCARDS(TROLL)=99 : Inc MUMBOOKS
  152. TROLL$(A)="" : MCT=MCT-4
  153. End If 
  154.  
  155. Gosub THINGY : Inc TROLL : Goto MUM_ASK_TROLLS
  156.  
  157. PL_ASK_TROLLS:
  158.  
  159. Reserve Zone 20
  160. For X=1 To 13
  161. If NUMPL(X-1)<>0 Then Set Zone X,XB(X-1),YB(X-1) To XB(X-1)+32,YB(X-1)+32
  162. Next X
  163. Set Zone 20,292,100 To 310,142
  164. Locate 0,24 : Ink 4 : Paper 4 : Centre Space$(38)
  165. Locate 0,24 : A$="Its your turn" : Centre A$ : SPEECH=Len(A$)*4
  166. Sam Play 14 : Gosub ANI : Wait 40 : Inc TROLL : Show On 
  167.  
  168. Timer=0 : Repeat 
  169. CHZ=Mouse Zone : R=Rnd(2)+1
  170. If Timer=500 and R=1
  171. Locate 0,24 : Centre Space$(38) : Locate 0,24 : A$="Oh you're so good"
  172. Centre A$ : SPEECH=Len(A$)*4 : Sam Play 33 : Gosub ANI : Wait 20 : Timer=0
  173. End If 
  174.  
  175. If Timer=500 and R=2
  176. Locate 0,24 : Centre Space$(38) : Locate 0,24
  177. A$="Mummy thinks you're clever" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 31
  178. Gosub ANI : Wait 20 : Timer=0
  179. End If 
  180.  
  181. If Timer=500 and R=3
  182. Locate 0,24 : Centre Space$(38) : Locate 0,24 : A$="Come on, I'm tired"
  183. Centre A$ : SPEECH=Len(A$)*4 : Sam Play 32 : Gosub ANI : Wait 20 : Timer=0
  184. End If 
  185.  
  186. If Mouse Key=2
  187. Hide On : Fade 3 : Wait 30 : Cls : Goto TITLE
  188. End If 
  189.  
  190. Wait Vbl : Until CHZ<>0 and CHZ<>20 and Mouse Key=1
  191.  
  192. For X=1 To 13
  193. If MUMCARDS(X)=PLCARDS(CHZ-1) Then P=MUMCARDS(X) : Goto IHAVE
  194. Next X
  195.  
  196. FISH=CHZ-1
  197. Paper 4 : Locate 0,24 : Centre Space$(38) : Paper 4 : Ink 4 : Locate 0,24
  198. A$="Grab a troll sweetie lips" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 13
  199. Gosub ANI : Show On 
  200.  
  201. G_TROLL:
  202.  
  203. Repeat : CHZ=Mouse Zone : Wait Vbl : Until CHZ=20 and Mouse Key=1
  204.  
  205. ADIT:
  206.  
  207. Inc PCK : P=PCK(PCK) : If P=99 Then Goto ADIT
  208. Paste Bob 256,110,P : Sam Play 34 : Wait 50
  209.  
  210. For X=1 To 13
  211. If PLCARDS(X)=P Then Inc NUMPL(X) : Inc PLCT : Goto BOOKPL1
  212. Next X
  213.  
  214. For X=1 To 13
  215. If PLCARDS(X)=99
  216. Inc PLCT : PLCARDS(X)=P : Inc NUMPL(X)
  217. Gosub THINGY : Goto GOTIT
  218. End If 
  219. Next X
  220.  
  221. Gosub THINGY : Goto MUM_ASK_TROLLS
  222.  
  223. BOOKPL1:
  224.  
  225. For XI=1 To 13
  226. Gosub THINGY
  227. If NUMPL(XI)=4
  228. Locate 0,24 : Paper 4 : Centre Space$(38) : Locate 0,24
  229. A$="Thats a book for you" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 4
  230. Gosub ANI : Wait 40
  231. NUMPL(XI)=0 : Ink ERR : Bar XB(XI),YB(XI) To XB(XI)+30,YB(XI)+32
  232. PLCARDS(XI)=99 : Inc PLBOOKS : TROLL$(P)="" : PLCT=PLCT-4
  233. End If 
  234. Next XI
  235.  
  236. GOTIT:
  237.  
  238. If PLCARDS(FISH)=P
  239. Paper 4
  240. Locate 0,24 : Centre Space$(38) : Locate 0,24 : A$="You got what you wanted"
  241. Centre A$ : SPEECH=Len(A$)*3 : Sam Play 16 : Gosub ANI : Wait 50
  242. Gosub THINGY : Goto PL_ASK_TROLLS
  243. End If 
  244.  
  245. Gosub THINGY : Goto MUM_ASK_TROLLS
  246.  
  247. IHAVE:
  248.  
  249. POS=0
  250. If NUMMUM(X)=1
  251. A$="Yes, I have one card" : Inc NUMPL(CHZ-1) : Inc PLCT : Dec MCT
  252. Dec NUMMUM(X) : POS=1 : SAM=5
  253. End If 
  254.  
  255. If NUMMUM(X)=2
  256. A$="Yes, I have two cards" : NUMPL(CHZ-1)=NUMPL(CHZ-1)+2 : PLCT=PLCT+2
  257. MCT=MCT-2 : NUMMUM(X)=NUMMUM(X)-2 : POS=1 : SAM=6
  258. End If 
  259.  
  260. If NUMMUM(X)=3
  261. A$="Oh Golly Gosh, I have three cards" : NUMPL(CHZ-1)=NUMPL(CHZ-1)+3
  262. PLCT=PLCT+3 : MCT=MCT-3 : NUMMUM(X)=0 : POS=1 : SAM=7
  263. End If 
  264.  
  265. Hide On : MUMCARDS(X)=99 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  266. Centre A$ : SPEECH=Len(A$)*4 : Sam Play SAM : Gosub ANI : Wait 60 : Show On 
  267.  
  268. If NUMPL(CHZ-1)=4
  269. Gosub THINGY
  270. Locate 0,24 : Paper 4 : Centre Space$(38) : Locate 0,24
  271. A$="Thats a book for you" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 4
  272. Gosub ANI : Wait 40 : NUMPL(CHZ-1)=0 : Ink ERR
  273. Bar XB(CHZ-1),YB(CHZ-1) To XB(CHZ-1)+30,YB(CHZ-1)+32 : PLCARDS(CHZ-1)=99
  274. Inc PLBOOKS : TROLL$(P)="" : PLCT=PLCT-4 : Gosub THINGY
  275. End If 
  276.  
  277. If POS<>0 Then POS=0 : Gosub THINGY : Goto PL_ASK_TROLLS
  278. Gosub THINGY : Goto G_TROLL
  279.  
  280. THINGY:
  281.  
  282. For S=1 To 12
  283. If NUMPL(S)=1 Then IMG(S)=20
  284. If NUMPL(S)=2 Then IMG(S)=21
  285. If NUMPL(S)=3 Then IMG(S)=22
  286. If NUMPL(S)=4 Then IMG(S)=23
  287. Next S
  288. For X=1 To 12
  289. TEST=PLCARDS(X)
  290. If TEST<>99 Then Paste Bob XB(X),YB(X),PLCARDS(X)
  291. If TEST<>99 Then Paste Bob XB(X),YB(X),IMG(X)
  292. Next X
  293. Ink ERR : Bar 0,110 To 32,142
  294. Ink ERR : Bar 256,110 To 288,142
  295. If DEANO=1 Then DEANO=0 : Goto STAR
  296.  
  297. SCOS:
  298.  
  299. Locate 2,4 : Paper 6 : Pen 0 : Print "MUMMY" : Locate 2,6
  300. Print "CARDS";MCT;" " : Locate 2,8 : Print "BOOKS";MUMBOOKS;" "
  301.  
  302. Locate 30,4 : Paper 6 : Pen 0 : Print "SWEETIE" : Locate 30,6
  303. Print "CARDS";PLCT;" " : Locate 30,8 : Print "BOOKS";PLBOOKS;" " : Pen 15
  304.  
  305. If PCK=52 and MCT=0 and MUMBOOKS>=PLBOOKS
  306. Gosub THINGY
  307. Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  308. A$="Mummy wins the game" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 8
  309. Gosub ANI : Wait 60 : Pop : Goto PL_AGAIN
  310. End If 
  311.  
  312. If PCK=52 and PLCT=0 and PLBOOKS>MUMBOOKS
  313. Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  314. A$="You win the game" : Centre A$ : SPEECH=Len(A$)*3 : Sam Play 9
  315. Gosub ANI : Wait 80 : Pop : Goto PL_AGAIN
  316. End If 
  317.  
  318. GRAB_A_TROLL:
  319.  
  320. If PLCT=0 and PCK<52
  321. Show On : Paper 4 : Locate 0,24 : Centre Space$(38) : Locate 0,24
  322. A$="Grab a troll sweetie lips" : Centre A$ : SPEECH=Len(A$)*3
  323. Sam Play 13 : Gosub ANI : Wait 20 : Pop : Goto G_TROLL
  324. End If 
  325.  
  326. If MCT=0 and PCK<52
  327. Paper 4 : Locate 0,24 : Centre Space$(38)
  328. Locate 0,24 : A$="I guess I need another card" : Centre A$
  329. SPEECH=Len(A$)*3 : Sam Play 12
  330. Gosub ANI : Wait 20 : Pop : Goto MUMMY_GO_TROLL
  331. End If 
  332.  
  333. Return 
  334.  
  335. TITLE:
  336. Erase All 
  337. If HD=0 Then Dir$="Maindisk:"
  338. Run "PLAYTIME"